Thema |
---|
Assembly3, ein Kinematik-Skelett |
Niveau |
Grundwissen über Assembly3 und Sketcher ist hilfreich |
Zeit zum Abschluss |
40 Minuten |
Autoren |
FBXL5 |
FreeCAD-Version |
0.20 und neuer |
Beispieldateien |
None |
Siehe auch |
Anleitung KinematischerZusammenbau, Anleitung Kinematiksteuerung |
In dieser Anleitung geht es darum, einen einfachen 2D-Mechanismus zu erstellen und daran 3D-Objekte zu befestigen, hauptsächlich mit den Werkzeugen des externen Arbeitsbereichs Assembly3.
Diese Anleitung verwendet nicht das Skeleton-Sketch-Prinzip (siehe Assembly3 Create-Skeleton-Sketch auf GitHub).
Stattdessen werden PartDesign Bodies (Körper) verwendet, die jeweils nur eine
Skizze enthalten, um einen 2D-Mechanismus aufzubauen, ein Skizzen-Skelett.
Die Maße und die Farben wurden von der Anleitung SolveSpace tutorial übernommen, auf die sich auch die Assembly3-GitHub-Seite bezieht (siehe oben).
Dieses sogenannte Skizzen-Skelett besteht aus mehreren einzelnen Körpern und einem
Assembly-Container. Um weitere Objekte befestigen zu können, wird jeder Körper in einen eigenen Assembly-Container gepackt.
Die Körper (Bodies) und ihre Skizzen, die in diesem Zusammenbau (auch Baugruppe genannt) verwendet werden:
Alle acht Skizzen sind unterschiedlich eingefärbt und durch das Verschieben ihrer übergeordneten Körper, manuell positioniert
Die Form kann von dem tatsächlichen Teil abweichen, aber die Position der Geometrien, die die Gelenke festlegen, müssen genau sein.
Um die Positionen aller Körper festzusetzen oder zu steuern, braucht man ein Assembly-Objekt. Das fügt dem Konstruktionsbaum in der Baumansicht einen Ast für den Zusammenbau hinzu.
Diese Aktion wiederholt man, um für jeden Körper (Body) ein Assembly-Objekt zu erstellen, in dessen Parts-Container das jeweilige Body-Objekt gezogen wird. Danach setzt man den Körper in seiner Baugruppe fest:
Die Kurbelbaugruppe sollte beispielsweise so aussehen:
Der Unterbaugruppenast der Kurbel in der Baumansicht und die Kurbel mit ihrem festgesetzten Element in der 3D-Ansicht
In der Baumansicht werden alle Unterbaugruppenäste in den Parts-Container des übergeordneten Assembly-Objekts gezogen.
Zusammenbauast in der Baumansicht
Jetzt sind sie bereit, angeordnet zu werden.
Als Erstes braucht man ein unbewegliches Teil. Um die Grundplatte komplett festzusetzen, würde man normalerweise eine Fläche auswählen, aber in diesem Falle funktioniert es auch mit einem Kreis.
Der ausgewählte Kreis → Die festgesetzte Grundplatte mit dem erzeugten Element-Objekt dessen Element-Koordinatemsystem (EKS) angezeigt wird (grün)
Für scharnierartige Gelenke wählt man einen Kreis aus jeder Skizze aus und verwendet die Randbedingung Plane Coincidence. Diese setzt nicht nur die XY-Ebenen beider Elemente komplanar zueinander fest, sondern setzt auch ihre Z-Achsen fluchtend (kollinear) fest.
Kreise auf Grundplatte und Kurbel ausgewählt → Verschobene Kurbel mit den erzeugten Element-Objekten und angezeigtem EKSen (grün)
Kreise der Grundplatte und der oberen Scheibe ausgewählt → Verschobene Obere Scheibe
zuvor erstellte Gelenke erkennt man an der Darstellung ihrer Randbedingungen (rot).
Kreise der Kurbel und der Stange 1 ausgewählt → Verschobene Stange 1 und verschwenkte Kurbel
Das letzte Gelenk in dieser kinematischen Kette verbindet zwei Elemente, deren Z-Richtungen schon festgelegt sind, so dass nur noch eine Randbedingung Point on line fehlt
Kreise der Oberen Scheibe und der Stange 1 ausgewählt → Verschobene Stange 1, und verschwenkte Kurbel und Obere Scheibe
Wenn die Z-Achsen dreier Elemente oder Gelenke Parallel verlaufen und auf derselben virtuellen Ebene liegen, kann der Gleichungslöser bei ihrer Neuausrichtung in einem folgenden Schritt versagen, da er nicht entscheiden kann, in welche Richtung das mittlere Gelenk geschwenkt werden soll. Dies könnte der Fall sein, für das ausgewählte Element der Stange 1, dem Kurbel-Stange 1-Gelenk und dem Grundplatte-Kurbel-Gelenk, wie sie hier vorliegen. Wenn es so ist, mussman dem Löser helfen und ein Objekt (z.B. die Kurbel) mit dem Werkzeug Axial move von Hand drehen.
Eine weitere kinematische (Teil-)Kette startet mit den Randbedingungen Plane Coincidence.
Kreise der Oberen Scheibe (oder der Grundplatte) und der Stange 2 ausgewählt → Verschobene Stange 2
Kreise der Stange 2 und der Unteren Scheibe ausgewählt → Verschobene Untere Scheibe und verschwenkte Stange 2
Kreise der Oberen Scheibe und der Stange 3 ausgewählt → Verschobene Stange 3 und umgeordnete obere kinematische Teilkette
Und auch diese kinematische (Teil-)Kette wird mit der Randbedingung Point on line geschlossen.
Kreise der Unteren Scheibe und der Stange 3 ausgewählt → Verschobene Stange 3 und umgeordnete kinematische Teilketten
Zum Verbinden beider Kinematischer Teilketten wird Stange 4 verwendet, mit der Randbedingung Plane Coincidence an einem Ende und der Randbedingung
Point on line am anderen.
Kreise der Kurbel und der Stange 4 ausgewählt → Verschobene Stange 4
Kreise der Unteren Scheibe und der Stange 4 ausgewählt → Verschobene Stange 4 und endgültige Anordnung des kinematischen Zusammenbaus
Da Assembly3 keine Möglichkeiten bietet, kinematische Zusammenbauten zu steuern, braucht man externe Hilfe, wie diese Kinematiksteuerung. Damit diese Steuerung benutzt werden kann, muss das Label einer Randbedingung mit dem Suffix "Driver"
markiert werden, um sie zu einer antreibenden Randbedingung (einen Antrieb) zu machen. Es kann zur Verdeutlichung durch ein "."
oder "-"
abgetrennt werden, da die Steuerung nur prüft, ob das Label mit "Driver"
endet.
Dafür wird das Label des Grundplatte-Kurbel-Gelenks zu Base-Crank.Driver
geändert.
Der fertige kinematische Zusammenbau mit deaktivierter Darstellung von Elementen und Randbedingungen sollte ungefähr so aussehen:
Fertiger Zusammenbau in der Baumansicht und der 3D-Ansicht
GIF-Animation, erstellt aus einer, mit der Kinematiksteuerung gespeicherten, Bildfolge
Meine Erwartungen bezüglich der Befestigung eines neuen Objekts an einem Basisobjekt, das zu einem kinematischen Zusammenbau gehört, sahen ungefähr so aus:
Aber das wäre zu einfach gewesen.
Das Werkzeug Assembly3 ConstraintAttachment, wie alle Assembly3-Werkzeuge für Randbedingungen, baut für Positionierungsaufgaben auf der Verwendung von Element-Objekten und ihren Element-Koordinatensystemen (EKS) auf.
Daher ist das Befestigen von Objekten nur ein weiterer Weg Objekte zu einer (Unter-)Baugruppe hinzuzufügen.
Und so befestigt man z.B. Stange 4-3D an Stange 4:
Die Objekte haben unterschiedliche Ausrichtungen und das 3D-Objekt sollte einen Abstand zum 2D-Objekt haben.
Stange 4 (festgesetzt) und Stange 4-3D → Bögen ausgewählt → Veschobene Stange 4-3D (beide EKSe befinden sich an derselben Stelle, mit identischer Ausrichtung.)
Es ist nun offensichtlich, dass das Werkzeug Assembly3 ConstraintAttachment den Abstand und die Ausrichtung zwischen den beiden Objekten ignoriert.
Auf jeden Fall ist die Position jetzt festgeleg und es müssen nur noch der Winkel manuell angepasst und der gewünschte Abstand festgelegt werden:
Falls die Eigenschaften des zweiten Elements geändert werden, erfolgt die Bewegung des Winkels und des Abstands in umgekehrter Richtung.
Wie angefügt → Winkel angepasst → Abstand festgelegt
Wenn an jedes 2D-Objekt ein 3D-Objekt angefügt wurde, könnte es ungefähr so aussehen:
Der Abschnitt 3D-Geometrie_befestigen kratzt nur an der Oberfläche des Themas Erweiterung von Unterbaugruppen und andere Randbedingungen oder Kombinationen von Randbedingungen können passender sein als die Randbedingung Attachment.
Es ist wichtig, dass ein kinematischer Zusammenbau nur in kleinen Schritten bewegt wird, da sonst der Gleichungslöser aufgibt und versagt. Es is fast unmöglich Move part oder
Axial move für diese Aufgabe zu verwenden.
Die Randbedingung Assembly3_ConstraintCoincidence wird dazu verwendet, den kinematischen Zusammenbaut anzutreiben, ihre Daten-EigenschaftAngle (durch die Daten-EigenschaftLock Angle aktiviert) akzeptiert positive oder negative Gleitkommazahlen größer als 360 und kann daher mehrere vollständige Drehungen ausführen.